看公司前輩可以在資料表中放入自己的欄位,
像這樣加入"顏色"的欄位:
讓我很羨慕,
今天我就要來破解!
在[HumanResources].[Employee]裡面,
我們可以看出公司員工有290位,
BusinessEntityID為1到290。
SELECT *
FROM [HumanResources].[Employee]
JOIN [Person].[Person]這張表來看的話,
可以得到更詳細的資料,
SELECT P.BusinessEntityID
,*
FROM [HumanResources].[Employee] E
FULL JOIN [Person].[Person] P on P.BusinessEntityID = E.BusinessEntityID
ORDER BY P.BusinessEntityID
也可以確認員工真的只有290位,
原因是:
BusinessEntityID大於290的
在[HumanResources].[Employee]的資料為NULL。
(表示他們是「人」,不是「員工」)
這樣我們能夠把[Person].[Person]的資料大致分為
UNION ALL的說明文章有很多大神分享過,
我就不獻醜了,
UNION ALL還有另外一個雙胞胎叫UNION,
大家也可以去找相關的資料,
效能上也有不同,
這次我們先用UNION ALL看看。
--Employee
SELECT 'Employee' '類型'
,P.BusinessEntityID
,*
FROM [HumanResources].[Employee] E
FULL JOIN [Person].[Person] P on P.BusinessEntityID = E.BusinessEntityID
WHERE P.BusinessEntityID <= 290
--UNION ALL結合兩張表
UNION ALL
--NOTEmployee
SELECT 'NOTEmployee' '類型'
,P.BusinessEntityID
,*
FROM [HumanResources].[Employee] E
FULL JOIN [Person].[Person] P on P.BusinessEntityID = E.BusinessEntityID
WHERE P.BusinessEntityID>290
ORDER BY P.BusinessEntityID